from manim import *



'''

a 这个变量始终指向同一个对象，Transform 只是改变了它的形状/属性。

所以动画表现为：
圆形 → 变成正方形 → 再变成三角形，而不是“一个圆被替换掉，又出现一个新的三角形”。

如果你换成 ReplacementTransform(a, t)，结果就不一样了：
圆会被移出场景，新的正方形被加进来，再被移出，再加进三角形。
'''
class TranformsCycle(Scene):
    def construct(self):
        a=Circle()
        t1=Square()
        t2=Triangle()
        self.add(a)
        self.wait()
        for t in [t1,t2]:
            self.play(Transform(mobject=a, target_mobject=t))